#pragma once

/*
	This class behaves like a security token.
	When a process is underway and player input is required,
	the player will be handed one of these, for the purpose
	of presenting it with their eventual response.
	It's a simple comparison: The distributor of the Authority
	knows which Authority was assigned to who,
	so anyone persenting an Authority is easily verified as its owner.
*/
class Authority {
public:
	/*
		This sole constructor is responsible for remembering where,
		around a virtual table, the Authority recipient is seated.
		@param seatNumber	recipient index, ranging from 0 to MAX_PLAYERS-1
	*/
	Authority(unsigned int seatNumber):
		location(seatNumber)
	{}
	
	/*
		Accessor.
		@return	attribute
	*/
	unsigned int	getLocation()
	{
		return location;
	} // end method

private:
	// Index of the Authority-holder around a virtual table.
	unsigned int	location;
}; // end class
